<!DOCTYPE stack PUBLIC "-//Apple, Inc.//DTD stack V 2.0//EN" "" >
<stack>
<name>in</name>
<id>-1</id>
<cardCount>8</cardCount>
<cardID>2156</cardID>
<listID>4456</listID>
<cantModify><false /></cantModify>
<cantDelete><false /></cantDelete>
<cantAbort><false /></cantAbort>
<cardSize>
<width>640</width>
<height>480</height>
</cardSize>
<script>--------------------------------------------------------------------------------------------------------Multicom Publishing Inc.®----------------------------------------------------------------------------------------------------- 5.4.94 ------------------------------ version: 2.0 -------------------------------- PLTE to follow:-- # 11277 event-- # 19318 runMenu-- XCMDs to follow:-- # 256 Movie-- # 4 Picture-- # 4322 QTPict-- # 4321 QTMovie © Apple Computer, Inc.-- # 2629 ColorizeHC © BungDabba Productions-- # 28263 fillHCButton © BungDabba Productions-- # 28743 fillHCFields © BungDabba Productions-- # 10036 SwitchXRoo © 1990 Bill Steinberg-- XFCNs to follow:-- # 14000 ApplMemory © Apple Computer, Inc.-- # 12045 sysEnvironment © Apple Computer, Inc.-- # 12084 SystemPath © Apple Computer, Inc.-- # 12053 TotalRAM © Apple Computer, Inc.-- # 12067 VolumeList © Apple Computer, Inc.-- # 13017 MaxDepth © BungDabba Productions-- # 13016 colorPicker-- # 9742 getCollectionName---list of cmds,plts,and fcns are to be optimized-----------------------------------------------------------------------------------------------------------System Handlers:-----------------------------on SpinCursorglobal CursIDadd 1 to CursIDif CursID > 5007 or CursID < 5001 then put 5001 into CursIDset cursor to CursIDend SpinCursoron openStackspinCursorhide menuBarhide titleBarcheckBeginloadPaletteend openStackon startUpprepWinspinCursorhide menuBarhide titleBarset the userlevel to 1initGlobalsopenPictureresetSystemPaletteprepPltehideFinderend startUpon hideFinderglobal gInColorXtrasHiliteColor --XCMD to hide the finderput "0,0,0" into gInColorXtrasHiliteColor -- blackInColorBackdrop the screenRect, gInColorXtrasHiliteColor,solidend hideFinder----------------------INTRODUCTION HANDLERS----------------------------on introMoviego to cd "movieScreen"end introMovieon breakMovienoPaintWhiteif there is a window "LOGO.AVI"thenclose window "LOGO.AVI"end ifend breakMovieon checkBeginglobal introSwitchif introSwitch < 1thenintroMovieelseexit checkBeginend ifend checkBegin-----------------------EVENT RESOURCE HANDLERS-----------------------on resetSystemPaletteset the cursor to busypicture "SYSTEM_COLORS",resource,rect,false,8set the rect of window "SYSTEM_COLORS" to "639,479,640,480"show window "SYSTEM_COLORS" -- show is needed to reset palette!close window "SYSTEM_COLORS"end resetSystemPaletteon prepWinpicture "black",resource,rect,false,8 --draws a black screen before showing thumbnailset rect of window "black" to "0,0,640,480"noPaintWhiteshow window "black"end prepWinon prepPlteglobal introSwitchif there is a window "options" then ¬exit prepPltepalette "options","1005,1005"noPaintWhiteset the visible of window "options" to falseset loc of window "options" to "225,120"if there is a window "confirm" then ¬exit prepPltepalette "confirm","1005,1005"noPaintWhiteset the visible of window "confirm" to falseset loc of window "confirm" to "275,180"put 0 into introSwitchend prepPlteon closeStackspinCursorpointerend closeStackon openPicture winName -- handle openPicture sent by Picture XCMDglobal gCurrWindowif winName <> "SYSTEM_COLORS" thenput winName into gCurrWindowend ifend openPictureon colorizeHCglobal gOKToColorizeif (gOKToColorize is empty) then pass colorizeHCend colorizeHCon initGlobalsglobal gGlobalsOKif gGlobalsOK is true then exit initGlobalsif LastHilites = "" then put "0,0,0,0,0,0,0" &return &"0"&return&"1" into LastHilitesput true into gGlobalsOKend initGlobals--------------------------Navigational Handlers---------------------------on gNonoPaintWhiteset the visible of window "confirm" to not the visible of window "confirm"end gNoon goNextplay "mouseClick"lock Screengo nextunlock Screenend goNexton goPrevplay "mouseClick"lock Screengo previousunlock Screenend goPrevon goBackplay "mouseClick"lock Screengo to card "Main Menu" --takes you to this stack main menuunlock Screenend goBackon goSolarplay "mouseClick"lock screengo cd "Solar System"unlock screenend goSolaron goEventplay "mouseClick"lock screengo cd "Solar System"unlock screenend goEventon loadPalettenoPaintWhitepalette "runMenu", "0,417"end loadPalette-------------------OPTIONS PALETTE HANDLERS--------------------------------on goOptionsnoPaintWhiteset the visible of window "options" to not the visible of window "options"end goOptionson gQuitnoPaintWhiteset the visible of window "options" to not the visible of window "options"noPaintWhiteset the visible of window "confirm" to not the visible of window "confirm"end gQuiton gYesprepWincolorizeHC "colorFill"repeat until the lockScreen = falseunlock screenend repeatlock screencolorizeHC "Erase", "0,0,640,480"unlock screendoMenu "Quit HyperCard"end gYeson printTxtglobal markerprint marker with "PLANETS:TeachText"end printTxton gSummaryplay "mouseClick"global loadTxtlock screennoPaintWhitego to cd "PRINT" of stack "HOME"loadTxtunlock screenend gSummaryon gCancelnoPaintWhiteset the visible of window "options" to not the visible of window "options"end gCancelon gCreditsplay "mouseClick"lock screennoPaintWhitego to cd "CREDITS" of stack "HOME"unlock screenend gCreditson gSourcesplay "mouseClick"if there is a window "solPic" --hide pict rsrc when going to Sources screenthenclose window "solPic"end iflock screennoPaintWhitego to cd "SOURCES" of stack "HOME"unlock screenend gSourceson gHelpplay "mouseClick"lock screennoPaintWhitego to cd "HELP" of stack "HOME"unlock screenend gHelpon chckOptionsPlteif there is a window "options"thennoPaintWhitehide window "options"end ifend chckOptionsPlte---------------------------Glossary Handlers-------------------------------on goGlossnoPaintWhiteif the visible of window "options" = truethenhide window "options"end ifnoPaintWhitelock screengo to cd "GLOSSARY" of stack "HOME"unlock screenend goGloss---------------------------Check Environment Handlers----------------------on cHCinstall-- Check for correct environmentset cursor to busy--if checkEnviron() is not "OK" thengo HomegetHomeInfoexit to HyperCardend ifset cursor to busy--repeat until the lockScreen is falseunlock screenend repeat--end cHCinstallfunction checkEnviron-- The heapspace requirements may vary depending on your stackput MaxDepth() into TheDepthif TheDepth < 4 then errBitDepthif (TheDepth = 1) ¬and (the heapSpace < 2600) then errMemory TheDepth,"1100K"else if (TheDepth = 2) ¬and (the heapSpace < 117200) then errMemory TheDepth,"1200K"else if (TheDepth = 4) ¬and (the heapSpace < 205000) then errMemory TheDepth,"1250K"else if (TheDepth = 8) ¬and (the heapSpace < 384000) then errMemory TheDepth,"1300K"else if (TheDepth = 16) ¬and (the heapSpace < 721000) then errMemory TheDepth,"2400K"else if (TheDepth ≥ 24) ¬and (the heapSpace < 1421000) then errMemory TheDepth,"3000K"else if stackActivate() is not empty thenerrColorreturn "OK"else return "OK"end checkEnviron----------------------------EXTRA HANDLERS-------------------------This handler was created by Randy Joneson bHilite theButton, width-- hilite a button with a variable-width frame.-- rej 1/23/94----------------put the rect of theButton into temp-- calculate a smaller rect.put quote & item 1 of temp + width & comma & item 2 of temp + width & ¬comma & item 3 of temp - width & comma & item 4 of temp - width & ¬quote into temp2-- set clipping region to exclude the smaller rect.QTPict DiffClip, temp2-- now highlight button - smallrect, leaving frame.set the hilite of theButton to truerepeat until the mouse is up-- do TrackWithin equivalent as long as the mouse is down.-- conditionals may seem redundant but are designed to-- eliminate unnecessary param sets.if the MouseLoc is within temp thenif not the hilite of theButton thenset the hilite of theButton to trueend ifelseif the hilite of theButton thenset the hilite of theButton to falseend ifend ifend repeatwait 4 ticks -- to get a nice flash. Otherwise it may be too quick to see if just tapped.if the hilite of theButton thenset the hilite of theButton to falseend ifQTPict ClipTo, "0,0,2400,2400"end bHiliteon frameHilite -- hilite a clicked button or field, call-- from mouseDown script with no params. Default setup for bHilite.----------------play "mouseClick"bHilite the target, 3end frameHilite----------------------------Other handlers------------------------on pointerif there is a window "pointer"thenexit pointerelsenoPaintWhitepicture "pointer",resource,rect,falseend ifend pointeron closePointernoPaintWhiteif there is a window "pointer"thenhide window "pointer"end ifend closePointer----------------------------test handlers-------------------------on xy -- ∆ type "xy" into message box to obtain mouse coordinatesset cursor to crossrepeat until the mouseClickput the mouseLoc && " horz:" & the mouseH && " vert:" & the mouseV -- ∆end repeatend xy</script>